The delivery of real-time multimedia traffic over wireless networks is expected to be an important application in Third Generation Cellular, WIFI and WIMAX wireless networks. In these applications, multimedia data such as digital data representing images and sounds are organized into packets. Multimedia sources send streams of these packets to processing devices such as wireless access points that transmit the packets over wireless communication channels to end-user receivers. If a processing device is unable to transmit a packet immediately, it temporarily stores the packet in a queue or buffer until it can be transmitted. For example, a processing device may not be able to transmit a packet when the wireless communication channel is being used by another processing device.
The perceived quality of the multimedia data as received by the end user can be adversely affected by a number of factors including packet loss. Packet loss includes missing packets, which are not received by the end-user receiver, and corrupted packets, which are received but the data they carry has been corrupted. These packet losses may be caused by: (1) noisy communication channels, (2) simultaneous transmissions or “collisions” with packets sent by multiple transmitters, and (3) overflow of the buffers used in the processing devices to temporarily store packets before they are transmitted. Buffer overflow can occur when a processing device must temporarily store a packet in its buffer but the buffer is already full.
A number of techniques have been proposed to reduce the perceived effects of packet losses. One technique known as Forward Error Correction (FEC) enables a receiver to recover the data carried by missing or corrupted packets provided the conditions that caused the losses are not too frequent and do not last too long. The length and frequency of the error-causing conditions that can be handled by FEC are controlled by two parameters n and k, where a number (n−k) of “FEC packets” are combined with a number k of multimedia packets to form a set of packets with a total number of n multimedia and FEC packets. If a receiver can receive at least k of the n packets without corruption, then any losses due to missing and corrupted packets can be corrected. If fewer than k packets out of the n packets are received without corruption, then lost data for one or more packets cannot be recovered by FEC.
Unfortunately, FEC has a cost. The additional number (n−k) of FEC packets increases the risk of delays due to collisions and increases either the time or the channel bandwidth needed to transmit each set of packets. The values of the FEC parameters (n,k) may be chosen to optimize a tradeoff between competing requirements. A higher ratio φ=n/k increases the level of error correction that is possible but also increases delays and increases the needed channel bandwidth by a factor of φ.
The FEC parameters (n,k) can be chosen to meet requirements for protection, delay and bandwidth for a specified probability of packet loss. Unfortunately, it may be impossible to meet all requirements simultaneously and a compromise among the various requirements may be necessary. Furthermore, the available channel bandwidth imposes a practical limit on the ratio φ. A very high ratio may impose a bandwidth requirement that either causes the starvation of packets from other data sources or exceeds the available bandwidth of the communication channel. The optimal choice of the FEC parameters should take into account the available bandwidth of the channel as well as the bandwidth required by packets provided by other data sources.
In practice, however, conditions in a communication system can change rapidly. An optimum choice of FEC parameters that provides the desired level of protection with the least increase in bandwidth requires that the FEC parameter values (n,k) be set adaptively in response to changing conditions. Techniques referred to herein as “FEC Optimization Techniques” that may be used to set these parameters adaptively are discussed in international patent application publication no. WO 2007/005160 entitled “Method and System for Optimizing Forward Error Correction of Multimedia Streaming over Wireless Networks,” published Jan. 11, 2007 and filed May 26, 2006 under the Patent Cooperation Treaty, in Bauer and Jiang, “Optimal Choice of FEC Parameters to Protect Against Queuing Losses in Wireless Networks,” IEEE Int. Conf. on Networks (ICON), November 2005, Kuala Lumpur, Malaysia, and in Bauer and Jiang, “Optimal Parameter Settings for Forward Error Correction Schemes for Multimedia Streaming over Wireless Networks,” IEEE Multimedia Sig. Proc. Workshop (MMSP), Oct. 30-Nov. 2, 2005, Shanghai, China, pp. 349-352. In one implementation that is disclosed in these references, a receiver monitors the transmissions of a processing device, estimates the probability of packet loss for a set of packets due to buffer overflow in the processing device, and sends an indication of the estimated loss probability to the data source. The data source can adapt the FEC parameters it uses in response to the indication of loss probability.
If conditions change significantly after the loss probability for a set of packets is estimated, the indication of loss probability that is returned to the data source will not accurately reflect current conditions and the data source may not adapt its FEC parameters in an optimum manner. What is needed is a process that can estimate loss probability accurately yet respond to changes in conditions more rapidly.